Batch Script হল একটি অত্যন্ত শক্তিশালী টুল যা Windows অপারেটিং সিস্টেমের বিভিন্ন কাজকে অটোমেট করার জন্য ব্যবহৃত হয়। ব্যাচ স্ক্রিপ্টের সাহায্যে আপনি বিভিন্ন ধরনের টাস্ক যেমন ফাইল এবং ডিরেক্টরি ম্যানেজমেন্ট, সিস্টেম কনফিগারেশন, সফটওয়্যার ইনস্টলেশন, ব্যাকআপ এবং ডেটা রিস্টোরেশন, এবং আরও অনেক কিছু করতে পারেন। বাস্তব জগতে, ব্যাচ স্ক্রিপ্ট বেশ কয়েকটি ক্ষেত্রে ব্যবহৃত হয়, যেমন সিস্টেম অ্যাডমিনিস্ট্রেশন, সফটওয়্যার ডেপ্লয়মেন্ট, রক্ষণাবেক্ষণ এবং অটোমেশন।
এই অধ্যায়ে আমরা কিছু বাস্তব জীবনের উদাহরণ এবং প্রকল্প দেখব, যা ব্যাচ স্ক্রিপ্ট ব্যবহার করে বাস্তবায়ন করা যেতে পারে।
ব্যাচ স্ক্রিপ্ট দিয়ে সহজেই একটি স্বয়ংক্রিয় ব্যাকআপ সিস্টেম তৈরি করা সম্ভব। এটি আপনাকে নির্দিষ্ট সময় পর পর আপনার গুরুত্বপূর্ণ ফাইল বা ডেটার ব্যাকআপ তৈরি করতে সাহায্য করবে।
ব্যাচ স্ক্রিপ্ট উদাহরণ:
@echo off
rem ব্যাকআপ ফোল্ডার তৈরি
mkdir D:\Backups
rem ফাইল কপি করা
xcopy "C:\Users\MyUser\Documents" "D:\Backups\Documents" /E /H /Y
rem লগ ফাইল তৈরি
echo Backup completed on %date% at %time% >> D:\Backups\backup_log.txt
এখানে, xcopy
কমান্ডের সাহায্যে Documents ফোল্ডারের সব ফাইল D ড্রাইভে ব্যাকআপ করা হচ্ছে। /E
অপশন দিয়ে সাবডিরেক্টরি এবং ফাইলও কপি করা হবে, এবং /H
অপশন দিয়ে সিস্টেম ফাইলও কপি করা হবে।
ব্যাচ স্ক্রিপ্ট ব্যবহার করে আপনি নির্দিষ্ট সফটওয়্যার বা অ্যাপ্লিকেশন ডেপ্লয় করতে পারেন। এই স্ক্রিপ্ট স্বয়ংক্রিয়ভাবে সফটওয়্যার ইনস্টল করবে এবং কোনো ইউজার ইন্টারঅ্যাকশন ছাড়াই সম্পন্ন হবে।
ব্যাচ স্ক্রিপ্ট উদাহরণ:
@echo off
rem সফটওয়্যার ইনস্টল করা
echo Installing Software...
start /wait "C:\Setup\software_installer.exe" /silent
rem ইনস্টলেশনের পর কনফিগারেশন
echo Configuring software...
copy "C:\Setup\ConfigFile.cfg" "C:\ProgramFiles\Software\Config\"
rem সার্ভিস শুরু করা
sc start "SoftwareService"
এখানে start /wait
কমান্ড দিয়ে ইনস্টলেশন প্রক্রিয়া শুরু হচ্ছে এবং সফটওয়্যার কনফিগারেশন এবং সার্ভিস স্টার্ট করার কাজও করা হচ্ছে।
ফাইল মনিটরিং এবং অটো-সিঙ্ক সিস্টেমে ব্যাচ স্ক্রিপ্ট ব্যবহার করা যেতে পারে যাতে কোনো ফোল্ডারে ফাইলের পরিবর্তন হলে তা অন্য ফোল্ডারে স্বয়ংক্রিয়ভাবে কপি বা সিঙ্ক করা যায়।
ব্যাচ স্ক্রিপ্ট উদাহরণ:
@echo off
rem মনিটরিং শুরু করা
echo Monitoring folder for changes...
:LOOP
rem ফোল্ডারের মধ্যে ফাইল পরিবর্তন চেক করা
xcopy "C:\Source\*" "D:\Backup" /D /E /Y
timeout /t 10
goto LOOP
এই স্ক্রিপ্টটি প্রতি 10 সেকেন্ড পর পর সোর্স ফোল্ডারের মধ্যে নতুন বা পরিবর্তিত ফাইলগুলো ব্যাকআপ ফোল্ডারে কপি করবে। /D
অপশনটি কেবলমাত্র নতুন বা পরিবর্তিত ফাইল কপি করবে।
ব্যাচ স্ক্রিপ্ট ব্যবহার করে আপনি সিস্টেমের বিভিন্ন স্বাস্থ্যগত অবস্থা যেমন ডিস্ক স্পেস, প্রসেস চালানো, RAM ব্যবহারের তথ্য ইত্যাদি চেক করতে পারেন এবং একটি রিপোর্ট তৈরি করতে পারেন।
ব্যাচ স্ক্রিপ্ট উদাহরণ:
@echo off
rem সিস্টেম ইনফরমেশন সংগ্রহ করা
systeminfo > C:\SystemReports\HealthCheck.txt
echo Disk Space Information >> C:\SystemReports\HealthCheck.txt
wmic logicaldisk get size,freespace,caption >> C:\SystemReports\HealthCheck.txt
echo CPU Usage >> C:\SystemReports\HealthCheck.txt
wmic cpu get loadpercentage >> C:\SystemReports\HealthCheck.txt
rem রিপোর্ট দেখানো
notepad C:\SystemReports\HealthCheck.txt
এখানে, systeminfo
কমান্ড ব্যবহার করে সিস্টেমের বিস্তারিত তথ্য সংগ্রহ করা হচ্ছে, এবং wmic
কমান্ড দিয়ে ডিস্ক স্পেস ও CPU ব্যবহার সম্পর্কিত তথ্য সংগ্রহ করা হচ্ছে।
ব্যাচ স্ক্রিপ্টের সাহায্যে আপনি নিজের কাস্টম টুলস এবং ইউটিলিটি তৈরি করতে পারেন, যা নির্দিষ্ট কাজ স্বয়ংক্রিয়ভাবে পরিচালনা করতে সাহায্য করবে। উদাহরণস্বরূপ, একটি সিস্টেম ক্লিনিং টুল তৈরি করা যা অপ্রয়োজনীয় ফাইল এবং ক্যাশ পরিষ্কার করবে।
ব্যাচ স্ক্রিপ্ট উদাহরণ:
@echo off
rem অস্থায়ী ফাইল মুছে ফেলা
echo Deleting temporary files...
del /f /q %temp%\*
rem উইন্ডোজ ক্যাশ পরিষ্কার করা
echo Cleaning Windows Cache...
del /f /q C:\Windows\Temp\*
rem ব্রাউজারের ক্যাশ পরিষ্কার করা
echo Clearing Browser Cache...
del /f /q "C:\Users\%username%\AppData\Local\Google\Chrome\User Data\Default\Cache\*"
rem ক্লিনিং সম্পন্ন
echo Cleaning completed!
pause
এখানে, বিভিন্ন ক্যাশ এবং অস্থায়ী ফাইলগুলো মুছে ফেলা হচ্ছে। এটি একটি সাধারণ সিস্টেম ক্লিনিং টুল হিসেবে ব্যবহৃত হতে পারে।
Batch Script প্রকল্পগুলি বাস্তব জীবনে বিভিন্ন কাজে ব্যবহৃত হতে পারে। কিছু সাধারণ এবং কার্যকরী প্রকল্পের মধ্যে রয়েছে:
ব্যাচ স্ক্রিপ্টের সাহায্যে এই সকল কাজ স্বয়ংক্রিয়ভাবে পরিচালনা করা সম্ভব, যা সময় বাঁচাতে এবং প্রক্রিয়াগুলিকে আরও কার্যকরী করতে সহায়তা করে।
একটি Automated Backup System হল একটি স্বয়ংক্রিয় প্রক্রিয়া যা গুরুত্বপূর্ণ ডেটা বা ফাইলের নিয়মিত ব্যাকআপ তৈরি করে এবং সংরক্ষণ করে। ব্যাচ স্ক্রিপ্ট ব্যবহার করে একটি শক্তিশালী এবং সাশ্রয়ী ব্যাকআপ সিস্টেম তৈরি করা সম্ভব, যা নির্দিষ্ট সময় পর পর ব্যাকআপ নেয় এবং সংরক্ষণ করে, যাতে ডেটা হারানো থেকে সুরক্ষা পাওয়া যায়।
এটি বিশেষভাবে ব্যবহারিক, কারণ অনেক সময় ব্যাকআপ প্রক্রিয়া ম্যানুয়ালি চালানো ঝামেলার হতে পারে এবং ভুল হওয়ার সম্ভাবনা থাকে। ব্যাচ স্ক্রিপ্ট ব্যবহার করে এটি সম্পূর্ণ অটোমেটেড করা যেতে পারে।
একটি ব্যাচ স্ক্রিপ্ট ব্যবহার করে ফাইল বা ডিরেক্টরির ব্যাকআপ নেওয়া সম্ভব। সাধারণত, ব্যাচ স্ক্রিপ্টে xcopy
, robocopy
, অথবা copy
কমান্ড ব্যবহার করা হয়, যা ফাইলগুলো নির্দিষ্ট গন্তব্যে কপি করে। এছাড়াও, ব্যাকআপ প্রক্রিয়াটি নির্দিষ্ট সময় পর পর চালানোর জন্য Windows Task Scheduler ব্যবহার করা যেতে পারে।
এখানে একটি সাধারণ ব্যাচ স্ক্রিপ্ট দেওয়া হলো যা নির্দিষ্ট ফোল্ডার থেকে ব্যাকআপ তৈরি করবে এবং সেটি একটি ব্যাকআপ ফোল্ডারে কপি করবে।
@echo off
rem ব্যাকআপ প্রক্রিয়া শুরু
echo Starting Backup...
rem বর্তমান তারিখের সাথে ফোল্ডার নাম তৈরি করা
set datetime=%DATE:/=-%-%TIME::=-%
set backup_folder="C:\Backups\Backup_%datetime%"
rem নতুন ব্যাকআপ ফোল্ডার তৈরি করা
mkdir %backup_folder%
rem নির্দিষ্ট সোর্স ফোল্ডার থেকে ব্যাকআপ তৈরি করা
xcopy "C:\Data\ImportantFiles" %backup_folder% /E /H /C /I
rem ব্যাকআপ প্রক্রিয়া সফল হলে বার্তা প্রদর্শন
if %errorlevel% equ 0 (
echo Backup completed successfully!
) else (
echo Backup failed. Please check the log.
)
rem স্ক্রিপ্ট শেষ
pause
set datetime=%DATE:/=-%-%TIME::=-%
: এখানে, আমরা বর্তমান তারিখ এবং সময় ব্যবহার করছি ব্যাকআপ ফোল্ডারের নাম তৈরির জন্য, যাতে প্রতিটি ব্যাকআপ একটি আলাদা ফোল্ডারে সেভ হয়।mkdir %backup_folder%
: নতুন ব্যাকআপ ফোল্ডার তৈরি করছে, যার নাম বর্তমান তারিখ এবং সময় অনুসারে হবে।xcopy
কমান্ড: এটি সোর্স ফোল্ডার থেকে (যেমন C:\Data\ImportantFiles
) ব্যাকআপ তৈরি করে, এবং ডেস্টিনেশন ফোল্ডারে (যেমন C:\Backups\Backup_%datetime%
) কপি করে। এখানে /E
অপশনটি সাবফোল্ডারসহ সব ফাইল কপি করার জন্য, /H
হিডেন ফাইলও কপি করার জন্য, /C
ত্রুটি হলে চালিয়ে যাওয়ার জন্য, এবং /I
ফোল্ডার গন্তব্যকে কপি ফোল্ডার হিসেবে শনাক্ত করতে ব্যবহার করা হয়।echo Backup completed successfully!
বার্তা দেখাবে এবং ব্যর্থ হলে ত্রুটির বার্তা দেখাবে।যেহেতু এটি একটি ব্যাচ স্ক্রিপ্ট, তাই এটি নির্দিষ্ট সময় পর পর চালানোর জন্য Task Scheduler ব্যবহার করা যেতে পারে। Task Scheduler দিয়ে আপনি এই ব্যাচ স্ক্রিপ্টটি সিডিউল করতে পারেন যাতে এটি স্বয়ংক্রিয়ভাবে নির্দিষ্ট সময় পর পর ব্যাকআপ নেয়।
Task Scheduler এ ব্যাচ স্ক্রিপ্ট সেটআপ করার জন্য পদক্ষেপগুলো:
Start
মেনুতে গিয়ে "Task Scheduler" লিখে অ্যাপটি খুলুন।এখন, নির্ধারিত সময় পর পর এটি স্বয়ংক্রিয়ভাবে ব্যাকআপ নেবে।
Batch Script ব্যবহার করে ফাইল মনিটরিং এবং অটোমেটিক সিঙ্ক্রোনাইজেশন করা সম্ভব। এটি বিশেষভাবে প্রয়োজনীয় হতে পারে যখন আপনাকে নির্দিষ্ট ফোল্ডার বা ডিরেক্টরির মধ্যে পরিবর্তন নজরদারি করতে হয় বা ফাইলগুলোর আপডেট প্রক্রিয়া অটোমেট করতে হয়। এই টিউটোরিয়ালে, Batch Script ব্যবহার করে ফাইল মনিটরিং এবং অটোমেটিক সিঙ্ক্রোনাইজেশন সম্পর্কিত কয়েকটি পদ্ধতি আলোচনা করা হবে।
ফাইল মনিটরিংয়ের মাধ্যমে নির্দিষ্ট ফোল্ডারের মধ্যে ফাইলের পরিবর্তন, নতুন ফাইল যোগ, মুছে ফেলা বা রename হওয়া নিরীক্ষণ করা যায়। Batch Script এর মাধ্যমে ফোল্ডারে পরিবর্তন মনিটর করা একটু সীমাবদ্ধ, তবে কিছু কমান্ড ব্যবহার করে আপনি এটি বাস্তবায়ন করতে পারেন।
ফোল্ডার চেক করা প্রতি নির্দিষ্ট সময় অন্তর:
আপনি dir
কমান্ড ব্যবহার করে একটি ফোল্ডারের মধ্যে ফাইলগুলোর তালিকা দেখতে পারেন এবং ফোল্ডারে কোনো নতুন পরিবর্তন সনাক্ত করতে পারেন। সুতরাং, একটি নির্দিষ্ট সময় অন্তর ফোল্ডারটির অবস্থার পরিবর্তন পরীক্ষা করতে, একটি লুপ ব্যবহার করা যেতে পারে।
উদাহরণস্বরূপ, একটি স্ক্রিপ্ট যা প্রতি ৫ সেকেন্ডে একটি ফোল্ডার চেক করে এবং ফোল্ডারের তালিকা file_list.txt
ফাইলে সংরক্ষণ করে:
:loop
dir C:\MyFolder > file_list.txt
timeout /t 5
goto loop
এখানে:
dir C:\MyFolder
কমান্ডটি C:\MyFolder
ফোল্ডারের বর্তমান ফাইল এবং ডিরেক্টরির তালিকা দেখাবে।timeout /t 5
কমান্ডটি প্রতি ৫ সেকেন্ডে ফোল্ডারটি চেক করবে।goto loop
লুপটিকে পুনরায় চালু করবে।এই স্ক্রিপ্টে আপনি file_list.txt
ফাইলের পরিবর্তন মনিটর করতে পারেন, এবং যদি কোনো পরিবর্তন ঘটে, আপনি তা স্ক্রিপ্টের মাধ্যমে আলাদাভাবে ট্র্যাক করতে পারেন।
অটোমেটিক ফাইল সিঙ্ক্রোনাইজেশন ব্যবহৃত হয় একটি ফোল্ডারের ফাইল অন্য একটি ফোল্ডারে অটোমেটিকালি কপি বা সিঙ্ক্রোনাইজ করতে। Batch Script ব্যবহার করে ফাইল সিঙ্ক্রোনাইজেশন করার সবচেয়ে জনপ্রিয় পদ্ধতি হলো robocopy
বা xcopy
কমান্ড ব্যবহার করা।
robocopy
ব্যবহার করে ফাইল সিঙ্ক্রোনাইজেশন:
robocopy
(Robust File Copy) হল একটি শক্তিশালী ফাইল কপি টুল যা শুধুমাত্র ফাইল কপি নয়, বরং ডিরেক্টরি স্ট্রাকচার, ফোল্ডার ও ফাইলের সিঙ্ক্রোনাইজেশনও করতে সাহায্য করে। এটি ফোল্ডারের মধ্যে নতুন বা পরিবর্তিত ফাইল কপি করতে ব্যবহৃত হয়।
উদাহরণস্বরূপ, যদি আপনি C:\SourceFolder
থেকে D:\DestinationFolder
-এ ফাইলগুলো সিঙ্ক্রোনাইজ করতে চান, তাহলে নিচের স্ক্রিপ্টটি ব্যবহার করতে পারেন:
robocopy C:\SourceFolder D:\DestinationFolder /MIR /E
এখানে:
/MIR
সুইচটি সোর্স ফোল্ডারের সাথে ডেস্টিনেশন ফোল্ডারকে মিরর করে, অর্থাৎ সোর্স ফোল্ডারে কোনো ফাইল মুছে গেলে, ডেস্টিনেশন ফোল্ডার থেকেও তা মুছে যাবে।/E
সুইচটি শূন্য ফোল্ডার সহ সব ফোল্ডার সিঙ্ক্রোনাইজ করে।এটি ফোল্ডার সিঙ্ক্রোনাইজেশন খুবই সহজভাবে করবে, এবং যদি ফোল্ডারে কোনো নতুন ফাইল যুক্ত হয়, তা অটোমেটিকালি ডেস্টিনেশন ফোল্ডারে কপি হয়ে যাবে।
xcopy
ব্যবহার করে ফাইল সিঙ্ক্রোনাইজেশন:
xcopy
কমান্ডটি একটি পুরনো কিন্তু কার্যকরী টুল যা ফাইল এবং ডিরেক্টরি কপি করতে ব্যবহৃত হয়। এটি robocopy
-এর তুলনায় কিছুটা সীমাবদ্ধ, তবে কিছু বিশেষ ক্ষেত্রে কার্যকরী হতে পারে।
উদাহরণস্বরূপ, C:\SourceFolder
থেকে D:\DestinationFolder
-এ ফাইল সিঙ্ক্রোনাইজ করতে:
xcopy C:\SourceFolder D:\DestinationFolder /s /e /d
এখানে:
/s
সুইচটি শুধুমাত্র ফাইল কপি করবে এবং সাবডিরেক্টরির ফাইলও কপি করবে।/e
সুইচটি শূন্য ফোল্ডারও কপি করবে।/d
সুইচটি কেবলমাত্র নতুন বা পরিবর্তিত ফাইল কপি করবে।Batch Script দিয়ে ফাইল মনিটরিং এবং সিঙ্ক্রোনাইজেশন আপনাকে স্বয়ংক্রিয়ভাবে ফাইল ব্যাকআপ, ডেটা সিঙ্ক্রোনাইজেশন, বা ফোল্ডার পর্যবেক্ষণ করার সুবিধা দেয়। এটি বিশেষত এমন পরিস্থিতিতে উপকারী যখন আপনার প্রয়োজনীয় ডেটা একাধিক সিস্টেম বা লোকেশনে সিঙ্ক্রোনাইজ করা এবং ফাইলগুলোর কোন পরিবর্তন বা আপডেট নজরদারি করা।
উদাহরণস্বরূপ:
robocopy
স্ক্রিপ্ট ব্যবহার করা যেতে পারে।robocopy
বা xcopy
ব্যবহার করা যেতে পারে, যেমন অফিস ফোল্ডার সিঙ্ক্রোনাইজ করা বা ডেটা শেয়ার করা।ফাইল মনিটরিং এবং অটোমেটিক সিঙ্ক্রোনাইজেশন Batch Script ব্যবহার করে সহজেই করা যায়। dir
, robocopy
, এবং xcopy
কমান্ডগুলো ব্যবহার করে আপনি ফোল্ডার চেকিং, ফাইল কপি বা সিঙ্ক্রোনাইজেশন এবং ব্যাকআপ তৈরি করতে পারেন। Batch Script এর মাধ্যমে ফাইল সিঙ্ক্রোনাইজেশন স্বয়ংক্রিয় করে এবং নির্দিষ্ট সময় অন্তর ফোল্ডারের অবস্থা ট্র্যাক করে কার্যকরীভাবে কাজ করতে পারবেন।
Batch Script ব্যবহার করে Automated Software Installation এবং Software Update প্রক্রিয়া স্বয়ংক্রিয় করা যায়। এটি বিশেষভাবে উপকারী যখন একাধিক সিস্টেমে একই সফটওয়্যার ইনস্টল বা আপডেট করতে হয়, অথবা যখন নিয়মিত সফটওয়্যার আপডেটের কাজ করতে হয়।
স্বয়ংক্রিয়ভাবে সফটওয়্যার ইনস্টল করতে Batch Script ব্যবহার করা যায়। এই প্রক্রিয়ায়, সফটওয়্যার ইনস্টলেশনের জন্য প্রয়োজনীয় কমান্ডগুলো একটি স্ক্রিপ্টে লিখে রাখা হয়, যা এক ক্লিকেই সফটওয়্যার ইনস্টল করে দেয়।
Software Installer Command
সাধারণত, সফটওয়্যার ইনস্টল করার জন্য .exe বা .msi ফাইলের মাধ্যমে ইনস্টলেশন প্রক্রিয়া চালানো হয়। Batch Script এ এই ধরনের ইনস্টলেশন করার জন্য, start বা msiexec কমান্ড ব্যবহার করা যেতে পারে। উদাহরণস্বরূপ:
.exe ফাইল দিয়ে ইনস্টলেশন:
start /wait software_installer.exe /silent /install
এখানে, /wait
কমান্ডটি স্ক্রিপ্টটিকে ইনস্টলেশন প্রক্রিয়া শেষ না হওয়া পর্যন্ত অপেক্ষা করতে নির্দেশ দেয়। /silent
বা /quiet
ফ্ল্যাগ সাধারণত ইনস্টলেশন প্রক্রিয়াটিকে GUI ছাড়াই চালু করে, অর্থাৎ ইনস্টলেশন চলাকালীন ব্যবহারকারীকে কোনো পপ-আপ বা ডায়লগ দেখানো হয় না।
.msi ফাইল দিয়ে ইনস্টলেশন:
msiexec /i "software_installer.msi" /quiet /norestart
এখানে, msiexec কমান্ডটি Windows Installer (.msi ফাইল) চালাতে ব্যবহৃত হয়। /i
ফ্ল্যাগ ইনস্টলেশন নির্দেশ করে এবং /quiet
ফ্ল্যাগটি ইনস্টলেশনটি চুপচাপ (silent) চালু করে।
Batch Script এর মাধ্যমে সফটওয়্যার আপডেটিং প্রক্রিয়াও স্বয়ংক্রিয় করা যায়। অধিকাংশ সফটওয়্যারের জন্য আপডেট ফাইল নির্দিষ্ট জায়গায় (যেমন ওয়েবসাইট বা সার্ভার) পাওয়া যায়। এই আপডেট ফাইলটি ডাউনলোড করে ইনস্টলেশন প্রক্রিয়া সম্পন্ন করা যায়।
Update Check এবং Download
সফটওয়্যার আপডেটের জন্য প্রথমে আপনাকে চেক করতে হবে যে আপডেট ফাইলটি নতুন এবং ডাউনলোড করা প্রয়োজন কিনা। এরপর, আপডেট ফাইলটি ডাউনলোড এবং ইনস্টল করতে হবে।
উদাহরণস্বরূপ, একটি আপডেট ফাইল ডাউনলোড করতে curl
বা bitsadmin
ব্যবহার করা যেতে পারে:
curl ব্যবহার করে আপডেট ডাউনলোড:
curl -O https://example.com/software_update.exe
bitsadmin ব্যবহার করে আপডেট ডাউনলোড:
bitsadmin /transfer mydownloadjob /download /priority high https://example.com/software_update.exe C:\path\to\save\software_update.exe
Download এর পর ইনস্টলেশন
একবার আপডেট ফাইল ডাউনলোড হলে, সেটি ইনস্টল করা যাবে:
start /wait software_update.exe /silent
স্বয়ংক্রিয়ভাবে সফটওয়্যার আপডেটের কাজ নির্দিষ্ট সময়ে করতে Task Scheduler ব্যবহার করা যেতে পারে। Windows Task Scheduler এর মাধ্যমে নির্দিষ্ট সময়ে স্ক্রিপ্টটি চালানো সম্ভব। Batch Script এর মধ্যে এই কমান্ডটি ব্যবহার করে Task Scheduler তৈরি করা যেতে পারে:
schtasks /create /tn "Software Update Task" /tr "C:\path\to\script.bat" /sc daily /st 02:00
এটি প্রতি দিন রাত ২টায় script.bat
ফাইলটি রান করবে, যেখানে সফটওয়্যার আপডেট প্রক্রিয়া থাকবে।
সফটওয়্যার ইনস্টলেশন এবং আপডেটের প্রক্রিয়ায় ভুল হলে, তা ট্র্যাক করতে লগ ফাইল ব্যবহার করা প্রয়োজন। Batch Script এ, echo কমান্ড ব্যবহার করে লগ ফাইল তৈরি করা সম্ভব:
echo "Software update started at %date% %time%" >> update_log.txt
start /wait software_update.exe /silent >> update_log.txt 2>&1
echo "Software update completed at %date% %time%" >> update_log.txt
এখানে, 2>&1
কমান্ডটি স্ট্যান্ডার্ড এরর (stderr) এবং আউটপুট (stdout) উভয়ই লগ ফাইলে লিখে রাখে।
Batch Script ব্যবহার করে Automated Software Installation এবং Updater তৈরি করা সহজ এবং সময়সাশ্রয়ী। ইনস্টলেশন এবং আপডেট প্রক্রিয়া স্বয়ংক্রিয়ভাবে চালানোর জন্য start, msiexec, curl, bitsadmin, এবং schtasks এর মতো কমান্ড ব্যবহার করা হয়। এই প্রক্রিয়া গুলির মধ্যে সফটওয়্যার ডাউনলোড, ইনস্টলেশন, আপডেট এবং লগিং অন্তর্ভুক্ত থাকে। Task Scheduler ব্যবহার করে নির্দিষ্ট সময়ে সফটওয়্যার আপডেটও স্বয়ংক্রিয়ভাবে করা সম্ভব।
Batch স্ক্রিপ্ট ব্যবহার করে আপনি নিজস্ব Custom Tools এবং Utility Programs তৈরি করতে পারেন যা বিভিন্ন কাজের জন্য স্বয়ংক্রিয় সমাধান প্রদান করে। এই স্ক্রিপ্টগুলো সাধারণত সিস্টেম অ্যাডমিনিস্ট্রেশন, ডেটা ব্যাকআপ, লোগ ফাইল ম্যানেজমেন্ট, নেটওয়ার্ক ডায়াগনস্টিক, এবং অন্যান্য সাধারণ প্রশাসনিক কাজের জন্য তৈরি করা হয়। Batch স্ক্রিপ্টে Custom Tools এবং Utility তৈরি করার মাধ্যমে আপনি পুনরাবৃত্তিমূলক কাজগুলিকে স্বয়ংক্রিয় করতে পারেন, যা সময় বাঁচানোর পাশাপাশি কার্যকারিতা বৃদ্ধি করে।
প্রথমে, আপনাকে সিস্টেমের কোনো নির্দিষ্ট কাজ বা প্রক্রিয়া চিনহিত করতে হবে, যেটি আপনি অটোমেট করতে চান। এরপর সেই কাজের জন্য প্রয়োজনীয় Batch স্ক্রিপ্ট লেখার মাধ্যমে একটি Custom Utility তৈরি করা হয়।
উদাহরণ: ফোল্ডার ব্যাকআপ টুল তৈরি করা
এটি একটি সাধারণ ব্যাকআপ স্ক্রিপ্ট যা ব্যবহারকারীকে একটি সোর্স ফোল্ডার থেকে ডেস্টিনেশন ফোল্ডারে ফাইল কপি করতে সাহায্য করবে।
@echo off
setlocal
:: সোর্স এবং ডেস্টিনেশন ফোল্ডার সেট করা
set source=C:\Users\Public\Documents
set destination=D:\Backup\Documents
:: ব্যাকআপ কপি করা
echo Starting backup...
xcopy "%source%" "%destination%" /s /e /y
echo Backup completed successfully!
pause
এই স্ক্রিপ্টটি xcopy কমান্ড ব্যবহার করে সোর্স ফোল্ডারের সব ফাইল এবং সাবফোল্ডারকে ডেস্টিনেশন ফোল্ডারে কপি করবে।
আপনি যদি বিভিন্ন ফাইল ম্যানেজমেন্ট কাজগুলো অটোমেট করতে চান, তবে Batch স্ক্রিপ্টের মাধ্যমে আপনার প্রয়োজনীয় কমান্ডগুলো একত্রিত করে একটি Utility তৈরি করতে পারেন।
উদাহরণ: ফাইল খুঁজে বের করার টুল
এটি একটি স্ক্রিপ্ট যা নির্দিষ্ট ফোল্ডারে কোন ফাইলের উপস্থিতি চেক করবে এবং যদি ফাইলটি পাওয়া যায়, তাহলে একটি লোগ ফাইল তৈরি করবে।
@echo off
setlocal
:: ফোল্ডার এবং ফাইল নাম সেট করা
set folder=C:\Users\Public\Documents
set filename=example.txt
set logfile=C:\backup\log.txt
:: ফাইল চেক করা
echo Searching for %filename% in %folder%...
if exist "%folder%\%filename%" (
echo %filename% found! >> %logfile%
echo File found and log updated.
) else (
echo %filename% not found. >> %logfile%
echo File not found and log updated.
)
pause
এই স্ক্রিপ্টটি নির্দিষ্ট ফোল্ডারে example.txt নামক ফাইলটি খুঁজে বের করবে এবং যদি ফাইলটি পাওয়া যায়, তবে একটি লোগ ফাইলের মাধ্যমে রিপোর্ট করবে।
Batch স্ক্রিপ্টে নেটওয়ার্ক ডায়াগনস্টিকের জন্য বিভিন্ন কমান্ডও অন্তর্ভুক্ত করা যেতে পারে। যেমন ping, tracert, netstat এবং ipconfig। এই কমান্ডগুলো ব্যবহারের মাধ্যমে আপনি নেটওয়ার্ক সংক্রান্ত সমস্যা চিহ্নিত করতে পারেন।
উদাহরণ: নেটওয়ার্ক টেস্টিং টুল
@echo off
setlocal
:: পিং টেস্ট
set target=google.com
echo Testing connection to %target%...
ping %target% -n 5
:: IP কনফিগারেশন চেক করা
echo Displaying IP configuration...
ipconfig
:: ট্রেস রুট
echo Tracing route to %target%...
tracert %target%
pause
এটি একটি নেটওয়ার্ক ডায়াগনস্টিক স্ক্রিপ্ট যা প্রথমে ping কমান্ড দিয়ে একটি রিমোট সার্ভারে কানেক্টিভিটি পরীক্ষা করবে, এরপর ipconfig দিয়ে বর্তমান নেটওয়ার্ক কনফিগারেশন দেখাবে এবং শেষে tracert দিয়ে পিং করা গন্তব্যের ট্রেস রুট দেখাবে।
আপনি সিস্টেম সম্পর্কিত তথ্য যেমন CPU ব্যবহার, মেমরি স্ট্যাটাস, ডিস্ক স্পেস, অপারেটিং সিস্টেম ভের্সন ইত্যাদি সংগ্রহ করার জন্য একটি কাস্টম টুল তৈরি করতে পারেন।
উদাহরণ: সিস্টেম ইনফরমেশন টুল
@echo off
setlocal
:: সিস্টেম ইনফরমেশন সংগ্রহ
echo System Information:
systeminfo
:: ডিস্ক স্পেস চেক
echo Checking disk space...
wmic logicaldisk get size,freespace,caption
:: CPU স্ট্যাটাস
echo Checking CPU usage...
wmic cpu get loadpercentage
pause
এই স্ক্রিপ্টটি systeminfo কমান্ড ব্যবহার করে সিস্টেমের বিস্তারিত ইনফরমেশন দেখাবে, wmic logicaldisk কমান্ড দিয়ে ডিস্ক স্পেস চেক করবে, এবং wmic cpu দিয়ে CPU লোড শতাংশ দেখাবে।
আপনি Windows Firewall অথবা Windows Defender এর স্ট্যাটাস চেক করার জন্য সিকিউরিটি টুলও তৈরি করতে পারেন। এমন একটি টুল আপনি Batch স্ক্রিপ্টে তৈরি করতে পারেন যা সিস্টেমের সুরক্ষা সেটিংস চেক করবে এবং প্রয়োজন হলে সেগুলি কনফিগার করবে।
উদাহরণ: Windows Defender চেকিং টুল
@echo off
setlocal
:: Windows Defender এর স্ট্যাটাস চেক
echo Checking Windows Defender status...
MpCmdRun.exe -Status
pause
এই স্ক্রিপ্টটি Windows Defender এর স্ট্যাটাস চেক করবে এবং যদি Defender নিষ্ক্রিয় থাকে তবে সেটি সক্রিয় করার নির্দেশনা দিতে পারে।
Batch স্ক্রিপ্ট ব্যবহার করে Custom Tools এবং Utility Programs তৈরি করা অনেক সহজ। আপনি সিস্টেম অ্যাডমিনিস্ট্রেশন কাজগুলো অটোমেট করতে পারেন, যেমন ফাইল ব্যাকআপ, নেটওয়ার্ক ডায়াগনস্টিক, সিস্টেম ইনফরমেশন সংগ্রহ, এবং সুরক্ষা চেক। কাস্টম স্ক্রিপ্টগুলো তৈরি করার সময় modularity, error handling, এবং logging প্র্যাকটিসগুলো অনুসরণ করা উচিত, যা স্ক্রিপ্টের কার্যকারিতা এবং নির্ভরযোগ্যতা বাড়ায়।
common.read_more